|
1: |
|
app(app(app(if,true),xs),ys) |
→ xs |
2: |
|
app(app(app(if,false),xs),ys) |
→ ys |
3: |
|
app(app(lt,app(s,x)),app(s,y)) |
→ app(app(lt,x),y) |
4: |
|
app(app(lt,0),app(s,y)) |
→ true |
5: |
|
app(app(lt,y),0) |
→ false |
6: |
|
app(app(eq,x),x) |
→ true |
7: |
|
app(app(eq,app(s,x)),0) |
→ false |
8: |
|
app(app(eq,0),app(s,x)) |
→ false |
9: |
|
app(app(merge,xs),nil) |
→ xs |
10: |
|
app(app(merge,nil),ys) |
→ ys |
11: |
|
app(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ app(app(app(if,app(app(lt,x),y)),app(app(cons,x),app(app(merge,xs),app(app(cons,y),ys)))),app(app(app(if,app(app(eq,x),y)),app(app(cons,x),app(app(merge,xs),ys))),app(app(cons,y),app(app(merge,app(app(cons,x),xs)),ys)))) |
12: |
|
app(app(map,f),nil) |
→ nil |
13: |
|
app(app(map,f),app(app(cons,x),xs)) |
→ app(app(cons,app(f,x)),app(app(map,f),xs)) |
14: |
|
app(app(mult,0),x) |
→ 0 |
15: |
|
app(app(mult,app(s,x)),y) |
→ app(app(plus,y),app(app(mult,x),y)) |
16: |
|
app(app(plus,0),x) |
→ 0 |
17: |
|
app(app(plus,app(s,x)),y) |
→ app(s,app(app(plus,x),y)) |
18: |
|
list1 |
→ app(app(map,app(mult,app(s,app(s,0)))),hamming) |
19: |
|
list2 |
→ app(app(map,app(mult,app(s,app(s,app(s,0))))),hamming) |
20: |
|
list3 |
→ app(app(map,app(mult,app(s,app(s,app(s,app(s,app(s,0))))))),hamming) |
21: |
|
hamming |
→ app(app(cons,app(s,0)),app(app(merge,list1),app(app(merge,list2),list3))) |
|
There are 62 dependency pairs:
|
22: |
|
APP(app(lt,app(s,x)),app(s,y)) |
→ APP(app(lt,x),y) |
23: |
|
APP(app(lt,app(s,x)),app(s,y)) |
→ APP(lt,x) |
24: |
|
APP(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ APP(app(app(if,app(app(lt,x),y)),app(app(cons,x),app(app(merge,xs),app(app(cons,y),ys)))),app(app(app(if,app(app(eq,x),y)),app(app(cons,x),app(app(merge,xs),ys))),app(app(cons,y),app(app(merge,app(app(cons,x),xs)),ys)))) |
25: |
|
APP(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ APP(app(if,app(app(lt,x),y)),app(app(cons,x),app(app(merge,xs),app(app(cons,y),ys)))) |
26: |
|
APP(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ APP(if,app(app(lt,x),y)) |
27: |
|
APP(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ APP(app(lt,x),y) |
28: |
|
APP(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ APP(lt,x) |
29: |
|
APP(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ APP(app(cons,x),app(app(merge,xs),app(app(cons,y),ys))) |
30: |
|
APP(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ APP(app(merge,xs),app(app(cons,y),ys)) |
31: |
|
APP(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ APP(app(app(if,app(app(eq,x),y)),app(app(cons,x),app(app(merge,xs),ys))),app(app(cons,y),app(app(merge,app(app(cons,x),xs)),ys))) |
32: |
|
APP(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ APP(app(if,app(app(eq,x),y)),app(app(cons,x),app(app(merge,xs),ys))) |
33: |
|
APP(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ APP(if,app(app(eq,x),y)) |
34: |
|
APP(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ APP(app(eq,x),y) |
35: |
|
APP(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ APP(eq,x) |
36: |
|
APP(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ APP(app(cons,x),app(app(merge,xs),ys)) |
37: |
|
APP(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ APP(app(merge,xs),ys) |
38: |
|
APP(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ APP(merge,xs) |
39: |
|
APP(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ APP(app(cons,y),app(app(merge,app(app(cons,x),xs)),ys)) |
40: |
|
APP(app(merge,app(app(cons,x),xs)),app(app(cons,y),ys)) |
→ APP(app(merge,app(app(cons,x),xs)),ys) |
41: |
|
APP(app(map,f),app(app(cons,x),xs)) |
→ APP(app(cons,app(f,x)),app(app(map,f),xs)) |
42: |
|
APP(app(map,f),app(app(cons,x),xs)) |
→ APP(cons,app(f,x)) |
43: |
|
APP(app(map,f),app(app(cons,x),xs)) |
→ APP(f,x) |
44: |
|
APP(app(map,f),app(app(cons,x),xs)) |
→ APP(app(map,f),xs) |
45: |
|
APP(app(mult,app(s,x)),y) |
→ APP(app(plus,y),app(app(mult,x),y)) |
46: |
|
APP(app(mult,app(s,x)),y) |
→ APP(plus,y) |
47: |
|
APP(app(mult,app(s,x)),y) |
→ APP(app(mult,x),y) |
48: |
|
APP(app(mult,app(s,x)),y) |
→ APP(mult,x) |
49: |
|
APP(app(plus,app(s,x)),y) |
→ APP(s,app(app(plus,x),y)) |
50: |
|
APP(app(plus,app(s,x)),y) |
→ APP(app(plus,x),y) |
51: |
|
APP(app(plus,app(s,x)),y) |
→ APP(plus,x) |
52: |
|
LIST1 |
→ APP(app(map,app(mult,app(s,app(s,0)))),hamming) |
53: |
|
LIST1 |
→ APP(map,app(mult,app(s,app(s,0)))) |
54: |
|
LIST1 |
→ APP(mult,app(s,app(s,0))) |
55: |
|
LIST1 |
→ APP(s,app(s,0)) |
56: |
|
LIST1 |
→ APP(s,0) |
57: |
|
LIST1 |
→ HAMMING |
58: |
|
LIST2 |
→ APP(app(map,app(mult,app(s,app(s,app(s,0))))),hamming) |
59: |
|
LIST2 |
→ APP(map,app(mult,app(s,app(s,app(s,0))))) |
60: |
|
LIST2 |
→ APP(mult,app(s,app(s,app(s,0)))) |
61: |
|
LIST2 |
→ APP(s,app(s,app(s,0))) |
62: |
|
LIST2 |
→ APP(s,app(s,0)) |
63: |
|
LIST2 |
→ APP(s,0) |
64: |
|
LIST2 |
→ HAMMING |
65: |
|
LIST3 |
→ APP(app(map,app(mult,app(s,app(s,app(s,app(s,app(s,0))))))),hamming) |
66: |
|
LIST3 |
→ APP(map,app(mult,app(s,app(s,app(s,app(s,app(s,0))))))) |
67: |
|
LIST3 |
→ APP(mult,app(s,app(s,app(s,app(s,app(s,0)))))) |
68: |
|
LIST3 |
→ APP(s,app(s,app(s,app(s,app(s,0))))) |
69: |
|
LIST3 |
→ APP(s,app(s,app(s,app(s,0)))) |
70: |
|
LIST3 |
→ APP(s,app(s,app(s,0))) |
71: |
|
LIST3 |
→ APP(s,app(s,0)) |
72: |
|
LIST3 |
→ APP(s,0) |
73: |
|
LIST3 |
→ HAMMING |
74: |
|
HAMMING |
→ APP(app(cons,app(s,0)),app(app(merge,list1),app(app(merge,list2),list3))) |
75: |
|
HAMMING |
→ APP(cons,app(s,0)) |
76: |
|
HAMMING |
→ APP(s,0) |
77: |
|
HAMMING |
→ APP(app(merge,list1),app(app(merge,list2),list3)) |
78: |
|
HAMMING |
→ APP(merge,list1) |
79: |
|
HAMMING |
→ LIST1 |
80: |
|
HAMMING |
→ APP(app(merge,list2),list3) |
81: |
|
HAMMING |
→ APP(merge,list2) |
82: |
|
HAMMING |
→ LIST2 |
83: |
|
HAMMING |
→ LIST3 |
|
The approximated dependency graph contains 2 SCCs:
{22,24,25,27,29-32,34,36,37,39-41,43-45,47,50}
and {57,64,73,79,82,83}.